/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package co.com.going.logica;

import co.com.going.modelo.Nota;
import co.com.going.persistencia.IDAOnota;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.Stateless;

/**
 *
 * @author Olguita
 */
@Stateless
public class NotaLogica implements INotaLogica {

    @EJB
    private IDAOnota iDAOnota; 
    
    @Override
    public void crearNota(Nota nota) throws Exception {
        
        if(nota==null){
        
            throw new Exception("La Nota no tiene Informacion");
        
        }
        
        Nota objNota= iDAOnota.buscarNotaporId(nota.getCodNota());
        
        if(objNota!=null){
        
            throw new Exception("La Nota ya Existe");
        
        }
        
        if(nota.getNotas()==null||nota.getNotas().equals("")){
            
            throw new Exception("La Nota no puede ser Vacia");
            
        }
        
        iDAOnota.crearNota(nota);
        
    }

    @Override
    public void eliminarNota(Nota nota) throws Exception {
        
        if(nota==null){
        
            throw new Exception("La Nota no tiene Informacion");
        
        }
        
        Nota objNota= iDAOnota.buscarNotaporId(nota.getCodNota());
        
        if(objNota==null){
       
        
            throw new Exception("La Nota No Existe");
        
        }
        
        iDAOnota.eliminarNota(nota);
        
    }

    @Override
    public void modificarNota(Nota nota) throws Exception {
       
        if(nota==null){
        
            throw new Exception("La Nota no tiene Informacion");
        
        }
        
        Nota objNota= iDAOnota.buscarNotaporId(nota.getCodNota());
        
        if(objNota==null){
       
        
            throw new Exception("La Nota No Existe");
        
        }
        
        if(nota.getNotas()==null||nota.getNotas().equals("")){
            
            throw new Exception("La Nota no puede ser Vacia");
            
        }
        
        iDAOnota.modificarNota(nota);
        
    }

    @Override
    public List<Nota> notas() throws Exception {
        
        return  iDAOnota.notas();
        
    }

    @Override
    public Nota buscarNotaporId(Integer  IdNota) throws Exception {
        
        if(IdNota==null||IdNota==0) {
           
           throw new Exception("Ingrese Un ID Para realizar la busqueda");
           
       }
        
        return iDAOnota.buscarNotaporId(IdNota);
        
    }

   
}
